日本愛(ài)好者制作的微型巡線小車(chē)
巡線(LineFollowing)小車(chē)比賽就是眾多機(jī)器比賽中的一種。這種比賽是以小車(chē)在線上的運(yùn)行速度大小來(lái)決出勝負(fù)的。筆者自己制作了一個(gè)很小的(體積還不到一般巡線小車(chē)的五分之一)能夠在桌面上運(yùn)行的巡線小車(chē)。
關(guān)于巡線小車(chē)
巡線小車(chē)是沿著桌面上的線運(yùn)行,且具有自我操控的功能。其基本的操作有:
(1)利用小車(chē)前端的圖像傳感器來(lái)捕捉線的位置。大多數(shù)參賽者都會(huì)使用幾個(gè)圖像反射器來(lái)進(jìn)行圖像處理,而少數(shù)具有領(lǐng)導(dǎo)能力的參賽者使用的是圖像傳感器來(lái)進(jìn)行圖像處理。另外,對(duì)線的感應(yīng)過(guò)程還需要高分辨率和高魯棒性(即系統(tǒng)的健壯性)。
(2)利用操控機(jī)制來(lái)控制小車(chē)追蹤線。這僅僅是一個(gè)伺服操作(以機(jī)械位置或角度作為控制對(duì)象的自動(dòng)控制)。在運(yùn)用數(shù)字PID過(guò)濾器或者任何其他的伺服算法來(lái)穩(wěn)定跟蹤運(yùn)動(dòng)時(shí),任何相位的補(bǔ)償都是必須的。
(3)通過(guò)車(chē)道的狀況來(lái)控制車(chē)速。在通過(guò)一條曲線時(shí),由于輪胎和路面的摩擦,小車(chē)的速度是要有一定限制的。
小車(chē)尋的線有兩種,分別是:黑底白線和白底黑線。大部分競(jìng)賽都是采用第一種線,且線的寬度介于15和25毫米之間。下面是白底黑線的示意圖:
巡線小車(chē)的硬件部分
下圖三顯示了巡線小車(chē)的底面和側(cè)面。所有的機(jī)械部件和電線都是在一塊原始的板子上進(jìn)行安裝的,這塊板子同時(shí)也構(gòu)成了小車(chē)的底盤(pán)。
巡線小車(chē)有兩個(gè)驅(qū)動(dòng)車(chē)輪和一個(gè)自由車(chē)輪。驅(qū)動(dòng)車(chē)輪由一個(gè)7毫米直徑的球軸承和一個(gè)橡膠輪胎構(gòu)成。自由車(chē)輪是一個(gè)5毫米的球軸承。要讓驅(qū)動(dòng)車(chē)輪動(dòng)起來(lái),還需要兩個(gè)微小的用于蜂窩電話,尋呼機(jī)或者任何移動(dòng)設(shè)備的振動(dòng)馬達(dá)。小車(chē)的主軸用一個(gè)彈簧板壓在輪胎上,其輸出力矩就移轉(zhuǎn)給車(chē)輪了。駕駛裝置的實(shí)現(xiàn)有很多不同的方法。但主要是通過(guò)小車(chē)左右輪之間不同的旋轉(zhuǎn)速度來(lái)駕駛小
車(chē)的。這樣駕駛就不需要任何額外的致動(dòng)器,只需要控制車(chē)輪的速度就可以了。
一個(gè)Amtel公司的ATmega8(具有8KB系統(tǒng)內(nèi)可編程Flash的微控制器)被用作小車(chē)的控制器,且ATmega8由一個(gè)硬幣式的鋰電池來(lái)啟動(dòng)。其他的鋰電池用于馬達(dá)。分成兩部分來(lái)供電是為了避免由于馬達(dá)電壓下降而造成微控制器的意外復(fù)位。小車(chē)底盤(pán)的前端安裝了六個(gè)圖像反射器用來(lái)感應(yīng)地面的反射率。為了使車(chē)輪的轉(zhuǎn)速成線性,馬達(dá)是用PWM(脈寬調(diào)制,利用微處理器的數(shù)字輸出來(lái)對(duì)模擬電路進(jìn)行控制)驅(qū)動(dòng)的。
巡線小車(chē)的軟件部分
圖像反射器
為了探測(cè)小車(chē)將要運(yùn)行的線,大多數(shù)參賽者都用兩個(gè)或更多的圖像反射器。與地面反射率成比例輸出的電流通過(guò)一個(gè)電阻被轉(zhuǎn)換為電壓,并且測(cè)試這個(gè)電壓看線是否被探測(cè)到。然而環(huán)境光線引起的光敏電流會(huì)被添加到輸出電流,因此閾值電壓是不斷變化的,而不是固定在某一級(jí)的。
多數(shù)用于工業(yè)用途的圖像探測(cè)模塊都用柔和的光線以此來(lái)避免環(huán)境光線的干擾。被探測(cè)到的信號(hào)通過(guò)一個(gè)帶通濾波器(一個(gè)允許特定頻段的波通過(guò)同時(shí)屏蔽其他頻段的設(shè)備)被過(guò)濾,沒(méi)有用的信號(hào)就會(huì)被過(guò)濾掉。因此,只能探測(cè)到從光發(fā)射器發(fā)射來(lái)的比較柔和的信號(hào)。當(dāng)然,探測(cè)器絕對(duì)不能因?yàn)榄h(huán)境光線而達(dá)到飽和。探測(cè)器在線性區(qū)域進(jìn)行探測(cè)時(shí),這是必須的。
在這個(gè)項(xiàng)目中,脈沖光是用來(lái)排除環(huán)境光線的。這非常適合按順序掃描以防下一個(gè)傳感器干擾的陣列傳感器。微控制器開(kāi)始掃描傳感器的狀態(tài),采樣輸出電壓,打開(kāi)LED并且再次采樣輸出電壓。兩次采樣的不同之處在于LED的光敏電流和環(huán)境光線被排除后的輸出電壓。其余的傳感器也按上述順序進(jìn)行掃描。
控制器Amtel公司的ATmega8
線感應(yīng)器六個(gè)圖像反射器
供電裝置兩個(gè)CR2032鋰電池(一個(gè)用于控制器,一個(gè)用于馬達(dá))
馬達(dá)兩個(gè)小馬達(dá)分別用于左輪和右輪
尺寸45毫米長(zhǎng),33毫米寬,12.5毫米高
重量15克(包含兩個(gè)鋰電池)
性能在橢圓線上53厘米每秒
顯示出了實(shí)際線的位置和在中心值640探測(cè)到的線的位置。微控制器掃描六個(gè)傳感器并通過(guò)該線附近的兩個(gè)傳感器的輸出來(lái)計(jì)算出線的位置。這樣只用六個(gè)傳感器就能夠線性地探測(cè)到線的位置。所有傳感器輸出與反射器成比例的模擬值,每個(gè)傳感器的靈敏度各不相同。
在這一系統(tǒng)中,為了消除從輸出設(shè)備產(chǎn)生的差異,要每一個(gè)傳感器的校準(zhǔn)參數(shù)都輸入到非易失性的存儲(chǔ)器中。在線模式下,完成這個(gè)工作。
跟蹤控制
將被跟蹤的線的位置是與中心值做對(duì)比的,定位誤差同比例、積分、差分濾波器一起被處理來(lái)生成控制命令。巡線巡線用當(dāng)前最流行的用于伺服控制的算法PID來(lái)跟蹤線。
在伺服系統(tǒng)中比例項(xiàng)是相同的。它是一個(gè)不依賴(lài)于時(shí)間的增益放大器。應(yīng)用差分是為了改善對(duì)干擾的響應(yīng),同時(shí)彌補(bǔ)控制對(duì)象滯后的相位。大多數(shù)情況下為了穩(wěn)定跟蹤運(yùn)行,D項(xiàng)是必須的。這個(gè)項(xiàng)目中從巡線原因來(lái)看,I項(xiàng)是不必要的。提高了DC增益的I項(xiàng)是用于消除左偏移誤差的。但是,由于其本身的相位滯后,它常常會(huì)降低伺服系統(tǒng)的穩(wěn)定性。而巡線操作能夠忽略這樣的跟蹤偏差,因此I項(xiàng)是不必要的。
當(dāng)小車(chē)偏離線或者到達(dá)線的末端時(shí),感應(yīng)線的傳感器就會(huì)產(chǎn)生一個(gè)錯(cuò)誤。這時(shí)就會(huì)馬達(dá)會(huì)停止,微控制器進(jìn)入零功率消耗的休眠狀態(tài)。
提交
自動(dòng)化機(jī)床的故障排除技術(shù)淺析
安川焊接機(jī)器人編程
ABB機(jī)器人控制軟件RobotWare應(yīng)用手冊(cè)SafeMove(英文)
ABB IRB7600 機(jī)器人維護(hù)信息
ABB IRC5P機(jī)器人培訓(xùn)教材